Module
1 Basic Concepts (1 week)
1.1
Data, Information, Knowledge, Wisdom
1.2:
Brief History of Computing
Module
2: Data Representation in a Computer (1
week)
2.1
Number Representation in Different Numeral Systems
2.2
Units of Information & Binary Number System
Module
3: Computer Systems (2 weeks)
3.1
Computer Architecture Hardware and Software (make sure to touch on machine instruction)
3.2
Operating Systems (processes, manage
resources, file systems, possibly assembler instructions here).
Module
4: Learning to Program (3 weeks)
4.1
C Programming Language (why not just program using machine instructions?).
4.2 Compiling a
program (C++ instructions vs assembler instructions vs machine instructions)
4.2 Program execution (line
by line etc…)
4.3 Variables
4.4 If statements
4.5 Looping
4.6 Simple functions
4.7 Overview of
object-oriented programming
4.8 Testing programs. Describe
why quality assurance is important (QA).
4.9 Different
programming languages (Java etc…
4.8 Description of
programming related jobs
Module
5: Computer Networking (1 week)
5.1
Introduction to Networking
5.2
Introduction to Internet
5.3
Introduction to Client Server Model
5.4 Network
administration overview
5.5 Description of
networking related jobs
Module 6: Database (1
week)
5.1 Why bother with a
database if we could just use a flat file?
5.2 Very simple
normalization examples
5.3 SQL overview
(basic select statements)
5.4 Data warehousing. Normal
database (OLTP) vs data warehouse.
5.5 Description of
database related jobs. Data modeler, Database Programmer, Database
Administrator
Module 7: (Mobile Computing)
or (Mobile and Cloud Computing (1 week)
7.1 Issues for mobile
computing (low resources – battery, memory)
7.2 Android vs iOS
7.3 Storing data in
the cloud
7.4 Possibly write a
hello world app in Eclipse w/Android (need lab to be setup for this but
software is all free).
Module 8: Security (1
week)
8.1 Overview
8.2 Basic types of
attacks
8.3 Encryption
8.4 Possibly write an elementary
encryption algorithm in C++. For example, take the ASCII code of each character
in a file and add 3 to it.
Module 9: Program
specific topic(s) (1 or 2 weeks)
We could build in one
or two weeks at the end of the semester for each school to choose a topic that
is more geared towards their program. This will be in support of our
semi-standardized goal. Here are some example topics:
a. Data Structures (very
general description, basic operations of some data structures)
b. Artificial
Intelligence
c. Systems Analysis and
Design
d. Management Information
Systems
e. Web Programming (HTML,
CSS, PHP, MYSQL)
f. Basic Computability
Theory
g. Parallel Computing
h. Object-oriented
programming (more in depth)
i. Application software
(Excel, Access)
j. More C++ programming
k. Introduce another
programming language (for example Java)
l. Unix/Linux overview
(basic commands)
m. Discrete Mathematics
overview (sets, relations, basic proofs)
n. Virtualization
o. Big Data
p. Ethics
q. Go more in depth with
one of the topics already covered.